home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / Getting Started / MPW Development / MPW Additions / INTO Interfaces&Libraries / Cyberdog SDK / PublicIncludes / CyberConnectExtension.xh < prev    next >
Encoding:
Text File  |  1996-08-02  |  3.9 KB  |  160 lines  |  [TEXT/MPS ]

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: CyberConnectExtension.xh.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.18
  7.  *     SOM Emitter emitxh.dll: 2.33
  8.  */
  9.  
  10. #ifndef SOM_CyberConnectExtension_xh
  11. #define SOM_CyberConnectExtension_xh
  12.  
  13. class CyberConnectExtension;
  14.  
  15. #define CyberConnectExtension_MajorVersion 1
  16. #define CyberConnectExtension_MinorVersion 0
  17.  
  18. /* C++ SOM defs */
  19. #include <somcls.xh>
  20. #include <somcm.xh>
  21.  
  22. /* C++ parent defs */
  23. #ifndef SOM_CyberPanelExtension_xh
  24. #include <CyberPanelExtension.xh>
  25. #endif
  26.  
  27. #ifndef CyberConnectExtension_API
  28. #define CyberConnectExtension_API
  29. /*
  30.  * -- The Class API
  31.  */
  32.  
  33. /*
  34.  * Start of user-defined types:
  35.  */
  36. class SOMClass;
  37. class SOMObject;
  38. class ODFrame;
  39. class ODFacet;
  40. class ODObject;
  41. class ODExtension;
  42. class ODRefCntObject;
  43. class CyberExtension;
  44. class CyberSession;
  45. class ODSession;
  46. class CyberPanelExtension;
  47. class ODPart;
  48. class CyberConnectExtension;
  49. class CyberItem;
  50.  
  51. /*
  52.  * End of user-defined types.
  53.  */
  54.  
  55. #ifdef OLDIBMSOMAPISUPPORT
  56. #define CyberConnectExtensionCClassData CyberConnectExtensionClassData
  57. #define CyberConnectExtensionNewClass(major,minor) somNewVersionedClassReference(CyberConnectExtension,major,minor)
  58. #endif
  59.  
  60. /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
  61. #define CyberConnectExtensionMetaClass SOMClass
  62.  
  63.  
  64. /* The API to the CyberConnectExtension class object, and the methods it introduces. */
  65. SOMEXTERN struct CyberConnectExtensionClassDataStructure {
  66. #ifdef OLDIBMSOMAPISUPPORT
  67.     SOMClass            *classObject;    /* always zero, use somNewClassReference instead */
  68. #else
  69.     long zero;
  70. #endif
  71.     somStaticClassInfo *sci;
  72.     somDToken        instanceDataToken;
  73.     long reserved [3];
  74.     somMToken CreateCyberItem;
  75. } SOMDLINK CyberConnectExtensionClassData;
  76.  
  77. #if !defined(CyberConnectExtension_Class_Source) && !defined(SOM_Module_cyberconnectextension_Source)
  78. #if PRAGMA_IMPORT_SUPPORTED
  79. #pragma import list CyberConnectExtensionClassData
  80. #endif
  81. #endif
  82.  
  83.  
  84. /*
  85.  * -- Typedefs and inline method declarations for left path inherited methods
  86.  * -- are omitted because this compilation had -museinheritedmethods in effect
  87.  */
  88.  
  89.  
  90. /*
  91.  * -- Typedefs for CyberConnectExtension Method Procedures
  92.  */
  93. SOMEXTERN {
  94. typedef CyberItem*   (* SOMLINK somTD_CyberConnectExtension_CreateCyberItem)(CyberConnectExtension *somSelf, Environment *ev);
  95. }
  96.  
  97. #endif /* CyberConnectExtension_API */
  98.  
  99.  
  100. /*
  101.  * -- This emitter treats Method Tokens as Thunks by default.
  102.  * -- Use the sc modifier "nothunks" to change this default
  103.  */
  104. #undef somresolve_
  105. #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
  106.  
  107. /*
  108.  * -- The C++ Wrapper Class for CyberConnectExtension
  109.  */
  110. class CyberConnectExtension : public CyberPanelExtension
  111. {
  112. public:
  113.  
  114. // CyberConnectExtension::new registers use of the class object, and then uses somNew
  115. // to allocate memory and load the object method table pointer. 
  116. void *operator new(size_t size)
  117. {
  118.     SOM_IgnoreWarning(size);
  119.     // Allocate memory using the default allocator for CyberConnectExtension, and
  120.     // clear mem & set method table pointer, call basic initialization
  121. #ifdef SOMCHKNULL
  122.     void * __somResult = (void *)
  123.       somNewObject(CyberConnectExtension);
  124.     SOMCHKNULL(__somResult);
  125.     return __somResult;
  126. #else
  127.     return (void*) somNewObject(CyberConnectExtension);
  128. #endif
  129. }
  130.  
  131. // CyberConnectExtension::delete uses the default deallocator for the object's class.
  132. void operator delete(void * obj)
  133. {
  134.     if (obj) {
  135.         SOM_Resolve(obj,SOMObject,somFree)
  136.            ( (SOMObject*) obj );
  137.     }
  138. }
  139.  
  140. /* method: CreateCyberItem */
  141. CyberItem*   CreateCyberItem(Environment *ev)
  142. {
  143.    #ifdef SOMCHKEXCEPT
  144.    CyberItem* __somResult = 
  145.       SOM_ResolveD(this,CyberConnectExtension,CyberConnectExtension,CreateCyberItem)
  146.     (this,ev);
  147.       SOMCHKEXCEPT;
  148.    return __somResult;
  149. #else
  150.    return SOM_ResolveD(this,CyberConnectExtension,CyberConnectExtension,CreateCyberItem)
  151.     (this,ev);
  152. #endif
  153. }
  154.  
  155. };   /* CyberConnectExtension */
  156.  
  157.  
  158.  
  159. #endif       /* SOM_CyberConnectExtension_xh */
  160.